'''
给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。
请你找出平均数最大且 长度为 k 的连续子数组，并输出该最大平均数。

这里的长度为 k 的连续子数组的含义是 (k 是一个 滑动窗口,在 nums数组中 滑动)

就是计算滑动窗口的最大值，一个初始的值。然后每次滑动的时候 删除最左边的窗口元素 加入右边的窗口元素 比较最大值

在 python 2 中 / s

'''

def findMaxAverage(nums, k):
    ## 计算数组的前几项和 sum + 数组切片
    currentSum = sum(nums[:k])
    maxSum = currentSum
    
    for i in range(k,len(nums)):
        ##更新窗口
        currentSum = currentSum - nums[i-k]+nums[i]
        print(currentSum)
        if currentSum > maxSum:
            maxSum = currentSum
            
    return maxSum / k
        
if __name__ == "__main__":
    print(findMaxAverage([1,12,-5,-6,50,3],4))
